home *** CD-ROM | disk | FTP | other *** search
- 21st July 1992
- -----------------------------------------------------------------------------
- Support Group Application Note
- Number: 032
- Issue: 1
- Author: D J Bell
- -----------------------------------------------------------------------------
-
- BASIC IV Application Note
-
- -----------------------------------------------------------------------------
- Applicable Hardware: Master 128
- Master Compact
-
- Related Application Notes:
-
-
- -----------------------------------------------------------------------------
- Copyright (C) Acorn Computers Limited 1992
-
- Every effort has been made to ensure that the information in this leaflet is
- true and correct at the time of printing. However, the products described in
- this leaflet are subject to continuous development and improvements and
- Acorn Computers Limited reserves the right to change its specifications at
- any time. Acorn Computers Limited cannot accept liability for any loss or
- damage arising from the use of any information or particulars in this
- leaflet. ACORN, ECONET and ARCHIMEDES are trademarks of Acorn Computers
- Limited.
- -----------------------------------------------------------------------------
- Support Group
- Acorn Computers Limited
- Acorn House
- Vision Park
- Histon
- Cambridge CB4 4AE
- -----------------------------------------------------------------------------
-
-
- BASIC IV
-
- Incorporates changes from BASIC II to BASIC III as follows:
-
- * Provides some formatting of Assembly listings
- * COLOR is accepted as an alternative to COLOUR
- * SAVE A$+B$ works correctly
- * USE of ! and ? as formal parameters works correctly
- * A USA version listing COLOR instead of COLOUR is available
-
- Includes the following additional changes:
-
- * The version number in ROM is 4
- * Incorporates all the 65C02 (65C12) instructions in Assembler:
- * DEC A may be represented as DEA
- * INC A may be represented as INA for compatibility with
- MASM
- * STZ may be represented as CLR
- * ASL ALFRED or similar is accepted ie the 'A' indication of
- accumulator addressing mode for ASL, LSR, ROL, ROR, DEC, INC no
- longer affects symbol recognition.
-
- * X, Y or A in the Assembler may be in lower case. EQUB, EQUW &
- EQUD may also be in lower case.
-
- * Trailing spaces will always be stripped from lines entered into
- the interpreter.
-
- * Leading spaces will be stripped from lines entered into the
- interpreter when a non-zero LISTO is set. The assumption is that
- there will be a formatted listing on screen when cursor editing is
- used when LISTO is non-zero.
-
- * LISTO indents loops correctly.
- * Cross-reference/Search output is available from LIST. Lines will
- be LISTed IF the specified string is present eg:
- LIST IF DEF
- LIST 10, 1000 IF =
- LIST ,2000 IF A%
- It is not possible to search for TIME=90, for example, as a
- statement. It will only be checked for as a boolean expression.
- PTR£, HIMEM, PAGE, LOMEM are similarly affected.
-
- * RENUMBER or LIST will not be affected by &8D in comments or
- strings. In addition LIST will not be confused by coloured
- comments.
-
- * A statement to update an open file's extent 'EXT£chan=length' has
- been added. This uses OSARGS and so will not work until there are
- suitable filing systems.
-
- * A display real-time clock pseudo variable TIME$ has been
- introduced. It fetches a fixed 24 byte string from the OS in
- response to PRINT TIME$ (or similar). The string looks like Wed, 31
- Dec 1900.23:59:59. Assigning to TIME$="fred" merely passed the
- string directly to the OS with the length in the first byte.
-
- * AUTO no longer outputs a space after the line number.
- * General recursion is now allowed in 'FOR' loops eg:
- DEF FNQ FORJ=1TO10 : P.J;:N. :=10
- FORI=FNQ-9 TO FNQ STEP FNQ/10
- now works. In previous version on the first FNQ or FNQ's without
- the loop would work.
-
- * A new command EDIT which has identical syntax to LIST (even the
- IF section) can be used to create an in core text file of the
- current program (or section of it eg EDIT 10,100). It then issues
- the command "*EDIT hh, hh" where the hex addresses are addresses in
- zero page of the start of the in-memory text and the address in zero
- page of the end of the in-memory text plus one LISTO 0 is set before
- conversion begins. If there is not enough space to convert the
- entire file, the error message 'No room' will be given together with
- a line number which shows how far through the program it had got: at
- this stage either CLEAR or a different EDIT command should be used.
- ESCAPE will behave similarly, stopping the conversion to text.
-
- * The use of the " | " character at the end of VDU parameters can
- be used to insert the correct number of remaining zeros.
-
- A full description of BBC BASIC IV can be found in the Master Series
- Reference Manual part 2 (product code ADJ23). The Master Series Welcome
- Guide contains a summary of the features (product code ADJ01).
-